/*
 * @Author: viivLgr 
 * @Date: 2018-06-04 16:58:37 
 * @Last Modified by: viivLgr
 * @Last Modified time: 2018-06-07 16:54:43
 */
import Util from 'util/util.jsx';

const _util = new Util();

class Product {
    // 获取商品列表
    getProductList(listParam) {
        let url = '',
            data = {};
        if(listParam.listType === 'list'){
            url = '/manage/product/list.do';
            data.pageNum = listParam.pageNum;
        }else if(listParam.listType === 'search'){
            url = '/manage/product/search.do';
            data.pageNum = listParam.pageNum;
            data[listParam.searchType] = listParam.keyword;
        }
        return _util.request({
            type: 'POST',
            url: url,
            data: data
        });
    }
    // 产品上下架
    setProductStatus(data) {
        return _util.request({
            type: 'POST',
            url: '/manage/product/set_sale_status.do',
            data: data
        });
    }
    // 检查保存商品的表单数据
    checkProduct(product){
        let result = {
            status: true,
            msg: '验证通过'
        };
        // 判断名称为空
        if (typeof product.name !== 'string' || product.name.length === 0) {
            return {
                status: false,
                msg: '商品名称不能为空'
            }
        }
        // 判断描述为空
        if (typeof product.subtitle !== 'string' || product.subtitle.length === 0) {
            return {
                status: false,
                msg: '商品描述不能为空'
            }
        }
        // 判断商品分类为空
        if (typeof product.categoryId !== 'number' || !(product.categoryId > 0)) {
            return {
                status: false,
                msg: '请选择商品品类'
            }
        }
        // 判断价格为数字，且大于等于0
        if (typeof product.price !== 'number' || !(product.price >= 0)) {
            return {
                status: false,
                msg: '请输入正确的价格'
            }
        }
        // 库存为数字，且大于等于0
        if (typeof product.stock !== 'number' || !(product.stock >= 0)) {
            return {
                status: false,
                msg: '请输入正确的库存数量'
            }
        }
        // 判断商品图片为空
        if (product.subImages.length === 0) {
            return {
                status: false,
                msg: '商品图片不能为空'
            }
        }
        // 判断商品详情为空
        if (product.detail.length === 0) {
            return {
                status: false,
                msg: '商品详情不能为空'
            }
        }
        return {
            status: true,
            msg: '验证通过'
        }
    }
    // 保存商品
    saveProduct(product){
        return _util.request({
            type: 'POST',
            url: '/manage/product/save.do',
            data: product
        });
    }
    // 商品详情
    getProduct(pid){
        return _util.request({
            type: 'POST',
            url: '/manage/product/detail.do',
            data: {
                productId: pid || 0
            }
        });
    }

    /**
     * 品类相关
     */
    // 根据父品类ID获取品类列表
    getCategoryList(parentCategoryId){
        return _util.request({
            type: 'POST',
            url: '/manage/category/get_category.do',
            data: {
                categoryId: parentCategoryId || 0
            }
        });
    }
    // 新增品类
    saveCategory(data){
        return _util.request({
            type: 'POST',
            url: '/manage/category/add_category.do',
            data: data
        });
    }
    // 修改品类名称
    updateCategoryName(data){
        return _util.request({
            type: 'POST',
            url: '/manage/category/set_category_name.do',
            data: data
        });
    }
}

export default Product;
